home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / sbin / split_combined_hex < prev    next >
Text File  |  2006-01-16  |  1KB  |  45 lines

  1. #!/bin/sh
  2.  
  3. # Split combined S3 image file into separate hex files"
  4.  
  5. set -e
  6.  
  7. TOOL="`dirname $0`/prism2_srec"
  8.  
  9. if [ ! -x "$TOOL" ]; then
  10.     echo "Could not find compiled prism2_srec tool using path '$TOOL'"
  11.     exit 1
  12. fi
  13.  
  14. TMPDIR=`mktemp -d srec_temp.XXXXXX` || exit 1
  15. IN=$TMPDIR/data
  16. PART=$TMPDIR/part
  17. cat > $IN
  18.  
  19. num=0
  20. while [ -s $IN ]; do
  21.     num=$(($num+1))
  22.     echo "Image $num"
  23.     eline=`grep -n ^S6 $IN | head -n 1 | cut -f1 -d:`
  24.     if [ -n "$eline" ]; then
  25.     head -n $eline $IN | grep -vE '^S6|^S4' > $PART
  26.     tail -n +$(($eline+1)) $IN > $IN.tmp && mv $IN.tmp $IN
  27.     else
  28.     grep -vE '^S6|^S4' $IN > $PART
  29.     rm $IN
  30.     fi
  31.  
  32.     fname=`$TOOL dummydev $PART 2> /dev/null | grep "^Included file name" | head -n 1 | colrm 1 20`
  33.     if [ -z "$fname" ] || echo "$fname" | grep -q /; then
  34.     fname=image-$num.hex
  35.     fi
  36.     mv $PART $TMPDIR/$fname
  37.     echo "  ==> $fname"
  38.     $TOOL dummydev $TMPDIR/$fname 2> /dev/null | grep -E '^Component|0x8' || true
  39.     echo
  40. done
  41.  
  42. rm -f $IN $PART
  43. echo "Resulting files in '$TMPDIR':"
  44. ls -l $TMPDIR
  45.